Uitwisselprofiel Ministerie van VWS Jaarverantwoording Zorg
Over Uitwisselprofiel Ministerie van VWS Jaarverantwoording Zorg
- Publicatiedatum:
- 22-01-2026
- Inwerkingtreding:
- 22-01-2026
4.2. Wat is het ziekteverzuimpercentage van de zorgverleners?
Concepten
- Arbeidsovereenkomst
- Contractomvang
- Contractomvangwaarde
- Onverplaatsbaar artefact
- Verzuimtijd
- Vestiging
- Werkovereenkomst afspraak
- Ziekteperiode
- Zorgverlener (functie)
Relaties
- deel van
- gaat over
- gedefinieerd door
- heeft deel
- heeft eigenschap of kenmerk
- heeft eigenschapswaarde
- heeft meeteenheid
Eigenschappen
Instanties
SPARQL query
Code gekopieerd
...Kopieer naar klembord
1# Indicator: VWS JVZ 4.2 2# Parameters: ?jaar 3# Ontologie: versie 3.0 of nieuwer 4 5PREFIX onz-g: <http://purl.org/ozo/onz-g#> 6PREFIX onz-org: <http://purl.org/ozo/onz-org#> 7PREFIX time: <http://www.w3.org/2006/time#> 8PREFIX onz-pers: <http://purl.org/ozo/onz-pers#> 9PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 10 11SELECT 12 (?teller AS ?Teller) 13 (?noemer AS ?Noemer) 14 (IF(?noemer = 0, "Ongedefineerd", 100 * ?teller / ?noemer) AS ?Indicator) 15{ 16 SELECT 17 (SUM(?netto_verzuim_totaal) AS ?teller) 18 (SUM(?netto_dagen_afspraak) AS ?noemer) 19 { 20 { 21 SELECT 22 ?overeenkomst_afspraak 23 (MAX(?dagen_afspraak * ?ptf) AS ?netto_dagen_afspraak) 24 (SUM((?dagen_verzuim - ?totaal_hersteld) * ?ptf) AS ?netto_verzuim_totaal) 25 { 26 SELECT 27 ?overeenkomst_afspraak 28 ?ptf 29 ?ziekte 30 ?dagen_afspraak 31 ?dagen_verzuim 32 (SUM(?dagen_hersteld) AS ?totaal_hersteld) 33 { 34 # BIND(2024 AS ?jaar) # Parameter 35 36 BIND(STRDT(CONCAT(STR(?jaar), "-01-01"), xsd:date) AS ?start_periode) 37 BIND(STRDT(CONCAT(STR(?jaar), "-12-31"), xsd:date) AS ?eind_periode) 38 39 ?eind_periode ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_periode_reken . 40 ?overeenkomst 41 a onz-pers:ArbeidsOvereenkomst ; 42 onz-g:hasPart ?overeenkomst_afspraak . 43 ?overeenkomst_afspraak 44 a onz-pers:WerkOvereenkomstAfspraak ; 45 onz-g:isAbout/a onz-pers:ZorgverlenerFunctie ; 46 onz-g:startDatum ?start_afspraak . 47 OPTIONAL { ?overeenkomst_afspraak onz-g:eindDatum ?eind_afspraak } 48 FILTER (?start_afspraak <= ?eind_periode && (?eind_afspraak >= ?start_periode || !BOUND(?eind_afspraak))) 49 ?overeenkomst_afspraak onz-g:hasPart ?omvang . 50 ?omvang 51 a onz-pers:ContractOmvang ; 52 onz-g:isAbout ?omvang_waarde . 53 ?omvang_waarde 54 a onz-pers:ContractOmvangWaarde ; 55 onz-g:hasDataValue ?omvang_getal ; 56 onz-g:hasUnitOfMeasure ?omvang_eenheid . 57 ?omvang_eenheid onz-g:hasDataValue ?eenheid_factor . 58 BIND(?omvang_getal/(36/?eenheid_factor) AS ?ptf) 59 60 BIND(IF(?start_afspraak < ?start_periode, ?start_periode, ?start_afspraak) AS ?start_afspraak_corr) 61 BIND(IF(?eind_afspraak > ?eind_periode || !BOUND(?eind_afspraak), ?eind_periode, ?eind_afspraak) AS ?eind_afspraak_corr) 62 ?start_afspraak_corr ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_afspraak_reken . 63 ?eind_afspraak_corr ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_afspraak_reken . 64 BIND(?eind_afspraak_reken - ?start_afspraak_reken + 1 AS ?dagen_afspraak) 65 OPTIONAL { 66 VALUES ?type_verzuim # Keuze in-/exclusief zwangerschapsverlog 67 { 68 onz-pers:ZiektePeriode 69 # onz-pers:ZwangerschapsVerlof 70 } 71 ?ziekte 72 a ?type_verzuim ; 73 onz-g:definedBy ?overeenkomst ; 74 onz-g:startDatum ?start_ziekte_periode . 75 ?start_ziekte_periode ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_ziekte_periode_reken . 76 OPTIONAL { 77 ?ziekte onz-g:eindDatum ?eind_ziekte_periode_temp . 78 ?eind_ziekte_periode_temp ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_ziekte_periode_temp_reken . 79 } 80 # FILTER(?start_ziekte_periode <= ?eind_afspraak_corr && (?eind_ziekte_periode_temp >= ?start_afspraak_corr || !BOUND(?eind_ziekte_periode_temp))) 81 OPTIONAL { 82 ?ziekte onz-g:hasQuality ?verzuim_tijd . 83 ?verzuim_tijd 84 a onz-pers:VerzuimTijdKwaliteit ; 85 onz-g:hasQualityValue ?verzuim_waarde . 86 ?verzuim_waarde 87 onz-g:hasUnitOfMeasure onz-g:percent ; 88 onz-g:startDatum ?start_verzuim_waarde_temp ; 89 onz-g:hasDataValue ?verzuim_percentage . 90 ?start_verzuim_waarde_temp ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?start_verzuim_waarde_temp_reken_temp 91 OPTIONAL { 92 ?verzuim_waarde onz-g:eindDatum ?eind_verzuim_waarde_temp . 93 ?eind_verzuim_waarde_temp ^time:inXSDDate/time:inTemporalPosition/time:numericPosition ?eind_verzuim_waarde_temp_reken_temp 94 } 95 } 96 } 97 BIND(IF(!BOUND(?start_verzuim_waarde_temp), ?unbound, IF(?start_verzuim_waarde_temp_reken_temp < ?start_afspraak_reken, ?start_afspraak_reken, ?start_verzuim_waarde_temp_reken_temp)) AS ?start_verzuim_waarde_reken) 98 BIND(IF(!BOUND(?start_verzuim_waarde_temp), ?unbound, IF(!BOUND(?eind_verzuim_waarde_temp_reken_temp) || ?eind_verzuim_waarde_temp_reken_temp > ?eind_afspraak_reken, ?eind_afspraak_reken, ?eind_verzuim_waarde_temp_reken_temp)) AS ?eind_verzuim_waarde_reken) 99 100 # Gebruikt totale ziekteperiode t/m eind meetperiode als maat voor kort/langdurend verzuim 101 BIND(IF(!BOUND(?ziekte), ?unbound, IF(!BOUND(?eind_ziekte_periode_temp) || ?eind_ziekte_periode_temp > ?eind_periode, ?eind_periode, ?eind_ziekte_periode_temp)) AS ?eind_ziekte_periode) 102 BIND(IF(!BOUND(?ziekte), ?unbound, IF(!BOUND(?eind_ziekte_periode_temp_reken) || ?eind_ziekte_periode_temp_reken > ?eind_periode_reken, ?eind_periode_reken, ?eind_ziekte_periode_temp_reken)) AS ?eind_ziekte_periode_reken) 103 BIND(IF(!BOUND(?ziekte), ?unbound, ?eind_ziekte_periode_reken - ?start_ziekte_periode_reken + 1) AS ?dagen_ziekte_periode) 104 # Filter kort/langdurend verzuim 105 #BIND(IF(?dagen_ziekte_periode <= 28 || !BOUND(?ziekte), 1, 0) AS ?voorwaarde_1) 106 BIND(IF(BOUND(?ziekte) && (?start_ziekte_periode <= ?eind_afspraak_corr && (?eind_ziekte_periode >= ?start_afspraak_corr || !BOUND(?eind_ziekte_periode))), 1, 0) AS ?voorwaarde_2) 107 BIND(IF(!BOUND(?verzuim_tijd) || (BOUND(?verzuim_tijd) && (?start_verzuim_waarde_temp <= ?eind_afspraak_corr && (?eind_verzuim_waarde_temp >= ?start_afspraak_corr || !BOUND(?eind_verzuim_waarde_temp)))), 1, 0) AS ?voorwaarde_3) 108 BIND(?voorwaarde_2 * ?voorwaarde_3 AS ?geldige_ziekte) 109 110 BIND(IF(BOUND(?verzuim_tijd), ?geldige_ziekte * (100 - ?verzuim_percentage)/100 * (?eind_verzuim_waarde_reken - ?start_verzuim_waarde_reken + 1), 0) AS ?dagen_hersteld) 111 BIND(IF(!BOUND(?ziekte), ?unbound, IF(?start_ziekte_periode_reken < ?start_afspraak_reken, ?start_afspraak_reken, ?start_ziekte_periode_reken)) AS ?start_ziekte_reken) 112 BIND(IF(!BOUND(?ziekte), ?unbound, IF(?eind_ziekte_periode_temp_reken > ?eind_afspraak_reken || !BOUND(?eind_ziekte_periode_temp_reken), ?eind_afspraak_reken, ?eind_ziekte_periode_temp_reken)) AS ?eind_ziekte_reken) 113 BIND(IF(BOUND(?ziekte), ?geldige_ziekte * (?eind_ziekte_reken - ?start_ziekte_reken + 1), 0) AS ?dagen_verzuim) 114 } 115 GROUP BY 116 ?overeenkomst_afspraak 117 ?ptf 118 ?ziekte 119 ?dagen_afspraak 120 ?dagen_verzuim 121 } 122 GROUP BY 123 ?overeenkomst_afspraak 124 } 125 ?overeenkomst_afspraak onz-g:isAbout ?locatie . 126 ?locatie 127 a onz-g:StationaryArtifact ; 128 onz-g:partOf* ?vestiging_uri . 129 ?vestiging_uri a onz-org:Vestiging ; 130 . 131 } 132}